/**********************************************************************/
/*   ____  ____                                                       */
/*  /   /\/   /                                                       */
/* /___/  \  /                                                        */
/* \   \   \/                                                       */
/*  \   \        Copyright (c) 2003-2009 Xilinx, Inc.                */
/*  /   /          All Right Reserved.                                 */
/* /---/   /\                                                         */
/* \   \  /  \                                                      */
/*  \___\/\___\                                                    */
/***********************************************************************/

/* This file is designed for use with ISim build 0x7708f090 */

#define XSI_HIDE_SYMBOL_SPEC true
#include "xsi.h"
#include <memory.h>
#ifdef __GNUC__
#include <stdlib.h>
#else
#include <malloc.h>
#define alloca _alloca
#endif
static const char *ng0 = "D:/P7/dm.v";
static int ng1[] = {0, 0};
static int ng2[] = {4096, 0};
static int ng3[] = {1, 0};
static unsigned int ng4[] = {1U, 0U};
static int ng5[] = {31, 0};
static int ng6[] = {16, 0};
static const char *ng7 = "%d@%h: *%h <= %h";
static unsigned int ng8[] = {0U, 0U};
static int ng9[] = {15, 0};
static int ng10[] = {7, 0};
static int ng11[] = {8, 0};
static unsigned int ng12[] = {2U, 0U};
static int ng13[] = {23, 0};
static unsigned int ng14[] = {3U, 0U};
static int ng15[] = {24, 0};



static void Initial_36_0(char *t0)
{
    char t5[8];
    char t14[8];
    char t15[8];
    char *t1;
    char *t2;
    char *t3;
    char *t4;
    char *t6;
    unsigned int t7;
    unsigned int t8;
    unsigned int t9;
    unsigned int t10;
    unsigned int t11;
    char *t12;
    char *t13;
    char *t16;
    char *t17;
    char *t18;
    char *t19;
    char *t20;
    char *t21;
    char *t22;
    char *t23;
    char *t24;
    char *t25;
    unsigned int t26;
    int t27;
    char *t28;
    unsigned int t29;
    int t30;
    int t31;
    unsigned int t32;
    unsigned int t33;
    int t34;
    int t35;

LAB0:    xsi_set_current_line(36, ng0);

LAB2:    xsi_set_current_line(37, ng0);
    xsi_set_current_line(37, ng0);
    t1 = ((char*)((ng1)));
    t2 = (t0 + 3048);
    xsi_vlogvar_assign_value(t2, t1, 0, 0, 32);

LAB3:    t1 = (t0 + 3048);
    t2 = (t1 + 56U);
    t3 = *((char **)t2);
    t4 = ((char*)((ng2)));
    memset(t5, 0, 8);
    xsi_vlog_signed_less(t5, 32, t3, 32, t4, 32);
    t6 = (t5 + 4);
    t7 = *((unsigned int *)t6);
    t8 = (~(t7));
    t9 = *((unsigned int *)t5);
    t10 = (t9 & t8);
    t11 = (t10 != 0);
    if (t11 > 0)
        goto LAB4;

LAB5:
LAB1:    return;
LAB4:    xsi_set_current_line(37, ng0);

LAB6:    xsi_set_current_line(38, ng0);
    t12 = ((char*)((ng1)));
    t13 = (t0 + 2888);
    t16 = (t0 + 2888);
    t17 = (t16 + 72U);
    t18 = *((char **)t17);
    t19 = (t0 + 2888);
    t20 = (t19 + 64U);
    t21 = *((char **)t20);
    t22 = (t0 + 3048);
    t23 = (t22 + 56U);
    t24 = *((char **)t23);
    xsi_vlog_generic_convert_array_indices(t14, t15, t18, t21, 2, 1, t24, 32, 1);
    t25 = (t14 + 4);
    t26 = *((unsigned int *)t25);
    t27 = (!(t26));
    t28 = (t15 + 4);
    t29 = *((unsigned int *)t28);
    t30 = (!(t29));
    t31 = (t27 && t30);
    if (t31 == 1)
        goto LAB7;

LAB8:    xsi_set_current_line(37, ng0);
    t1 = (t0 + 3048);
    t2 = (t1 + 56U);
    t3 = *((char **)t2);
    t4 = ((char*)((ng3)));
    memset(t5, 0, 8);
    xsi_vlog_signed_add(t5, 32, t3, 32, t4, 32);
    t6 = (t0 + 3048);
    xsi_vlogvar_assign_value(t6, t5, 0, 0, 32);
    goto LAB3;

LAB7:    t32 = *((unsigned int *)t14);
    t33 = *((unsigned int *)t15);
    t34 = (t32 - t33);
    t35 = (t34 + 1);
    xsi_vlogvar_wait_assign_value(t13, t12, 0, *((unsigned int *)t15), t35, 0LL);
    goto LAB8;

}

static void Cont_42_1(char *t0)
{
    char t3[8];
    char t4[8];
    char t19[8];
    char t26[8];
    char *t1;
    char *t2;
    char *t5;
    unsigned int t6;
    unsigned int t7;
    unsigned int t8;
    unsigned int t9;
    unsigned int t10;
    char *t11;
    char *t12;
    unsigned int t13;
    unsigned int t14;
    unsigned int t15;
    char *t16;
    char *t17;
    char *t18;
    char *t20;
    char *t21;
    char *t22;
    char *t23;
    char *t24;
    char *t25;
    char *t27;
    char *t28;
    char *t29;
    unsigned int t30;
    unsigned int t31;
    unsigned int t32;
    unsigned int t33;
    unsigned int t34;
    unsigned int t35;
    unsigned int t36;
    unsigned int t37;
    unsigned int t38;
    unsigned int t39;
    char *t40;
    char *t41;
    char *t42;
    char *t43;
    char *t44;
    char *t45;
    char *t46;

LAB0:    t1 = (t0 + 4216U);
    t2 = *((char **)t1);
    if (t2 == 0)
        goto LAB2;

LAB3:    goto *t2;

LAB2:    xsi_set_current_line(42, ng0);
    t2 = (t0 + 1528U);
    t5 = *((char **)t2);
    memset(t4, 0, 8);
    t2 = (t5 + 4);
    t6 = *((unsigned int *)t2);
    t7 = (~(t6));
    t8 = *((unsigned int *)t5);
    t9 = (t8 & t7);
    t10 = (t9 & 1U);
    if (t10 != 0)
        goto LAB4;

LAB5:    if (*((unsigned int *)t2) != 0)
        goto LAB6;

LAB7:    t12 = (t4 + 4);
    t13 = *((unsigned int *)t4);
    t14 = *((unsigned int *)t12);
    t15 = (t13 || t14);
    if (t15 > 0)
        goto LAB8;

LAB9:    t36 = *((unsigned int *)t4);
    t37 = (~(t36));
    t38 = *((unsigned int *)t12);
    t39 = (t37 || t38);
    if (t39 > 0)
        goto LAB10;

LAB11:    if (*((unsigned int *)t12) > 0)
        goto LAB12;

LAB13:    if (*((unsigned int *)t4) > 0)
        goto LAB14;

LAB15:    memcpy(t3, t40, 8);

LAB16:    t41 = (t0 + 4880);
    t42 = (t41 + 56U);
    t43 = *((char **)t42);
    t44 = (t43 + 56U);
    t45 = *((char **)t44);
    memcpy(t45, t3, 8);
    xsi_driver_vfirst_trans(t41, 0, 31);
    t46 = (t0 + 4784);
    *((int *)t46) = 1;

LAB1:    return;
LAB4:    *((unsigned int *)t4) = 1;
    goto LAB7;

LAB6:    t11 = (t4 + 4);
    *((unsigned int *)t4) = 1;
    *((unsigned int *)t11) = 1;
    goto LAB7;

LAB8:    t16 = (t0 + 2888);
    t17 = (t16 + 56U);
    t18 = *((char **)t17);
    t20 = (t0 + 2888);
    t21 = (t20 + 72U);
    t22 = *((char **)t21);
    t23 = (t0 + 2888);
    t24 = (t23 + 64U);
    t25 = *((char **)t24);
    t27 = (t0 + 2008U);
    t28 = *((char **)t27);
    memset(t26, 0, 8);
    t27 = (t26 + 4);
    t29 = (t28 + 4);
    t30 = *((unsigned int *)t28);
    t31 = (t30 >> 2);
    *((unsigned int *)t26) = t31;
    t32 = *((unsigned int *)t29);
    t33 = (t32 >> 2);
    *((unsigned int *)t27) = t33;
    t34 = *((unsigned int *)t26);
    *((unsigned int *)t26) = (t34 & 4095U);
    t35 = *((unsigned int *)t27);
    *((unsigned int *)t27) = (t35 & 4095U);
    xsi_vlog_generic_get_array_select_value(t19, 32, t18, t22, t25, 2, 1, t26, 12, 2);
    goto LAB9;

LAB10:    t40 = ((char*)((ng1)));
    goto LAB11;

LAB12:    xsi_vlog_unsigned_bit_combine(t3, 32, t19, 32, t40, 32);
    goto LAB16;

LAB14:    memcpy(t3, t19, 8);
    goto LAB16;

}

static void Always_44_2(char *t0)
{
    char t13[8];
    char t15[8];
    char t16[8];
    char t67[8];
    char t68[8];
    char t73[8];
    char t83[8];
    char t84[8];
    char t85[8];
    char t114[16];
    char t116[8];
    char t117[8];
    char *t1;
    char *t2;
    char *t3;
    char *t4;
    char *t5;
    unsigned int t6;
    unsigned int t7;
    unsigned int t8;
    unsigned int t9;
    unsigned int t10;
    char *t11;
    char *t12;
    char *t14;
    char *t17;
    char *t18;
    char *t19;
    char *t20;
    char *t21;
    char *t22;
    char *t23;
    char *t24;
    char *t25;
    char *t26;
    unsigned int t27;
    int t28;
    char *t29;
    unsigned int t30;
    int t31;
    int t32;
    unsigned int t33;
    unsigned int t34;
    int t35;
    int t36;
    unsigned int t37;
    unsigned int t38;
    unsigned int t39;
    unsigned int t40;
    unsigned int t41;
    unsigned int t42;
    unsigned int t43;
    unsigned int t44;
    unsigned int t45;
    unsigned int t46;
    unsigned int t47;
    unsigned int t48;
    unsigned int t49;
    unsigned int t50;
    unsigned int t51;
    unsigned int t52;
    unsigned int t53;
    unsigned int t54;
    unsigned int t55;
    unsigned int t56;
    unsigned int t57;
    unsigned int t58;
    unsigned int t59;
    unsigned int t60;
    unsigned int t61;
    unsigned int t62;
    unsigned int t63;
    unsigned int t64;
    unsigned int t65;
    unsigned int t66;
    char *t69;
    char *t70;
    char *t71;
    char *t72;
    char *t74;
    char *t75;
    char *t76;
    unsigned int t77;
    unsigned int t78;
    unsigned int t79;
    unsigned int t80;
    unsigned int t81;
    unsigned int t82;
    char *t86;
    char *t87;
    char *t88;
    char *t89;
    char *t90;
    char *t91;
    unsigned int t92;
    char *t93;
    unsigned int t94;
    char *t95;
    unsigned int t96;
    char *t97;
    unsigned int t98;
    int t99;
    int t100;
    char *t101;
    unsigned int t102;
    int t103;
    int t104;
    unsigned int t105;
    int t106;
    unsigned int t107;
    unsigned int t108;
    int t109;
    unsigned int t110;
    unsigned int t111;
    int t112;
    int t113;
    int t115;
    char *t118;
    char *t119;

LAB0:    t1 = (t0 + 4464U);
    t2 = *((char **)t1);
    if (t2 == 0)
        goto LAB2;

LAB3:    goto *t2;

LAB2:    xsi_set_current_line(44, ng0);
    t2 = (t0 + 4800);
    *((int *)t2) = 1;
    t3 = (t0 + 4496);
    *((char **)t3) = t2;
    *((char **)t1) = &&LAB4;

LAB1:    return;
LAB4:    xsi_set_current_line(44, ng0);

LAB5:    xsi_set_current_line(45, ng0);
    t4 = (t0 + 1208U);
    t5 = *((char **)t4);
    t4 = (t5 + 4);
    t6 = *((unsigned int *)t4);
    t7 = (~(t6));
    t8 = *((unsigned int *)t5);
    t9 = (t8 & t7);
    t10 = (t9 != 0);
    if (t10 > 0)
        goto LAB6;

LAB7:    xsi_set_current_line(50, ng0);

LAB16:    xsi_set_current_line(51, ng0);
    t2 = (t0 + 1368U);
    t3 = *((char **)t2);
    t2 = (t3 + 4);
    t6 = *((unsigned int *)t2);
    t7 = (~(t6));
    t8 = *((unsigned int *)t3);
    t9 = (t8 & t7);
    t10 = (t9 != 0);
    if (t10 > 0)
        goto LAB17;

LAB18:
LAB19:
LAB8:    goto LAB2;

LAB6:    xsi_set_current_line(45, ng0);

LAB9:    xsi_set_current_line(46, ng0);
    xsi_set_current_line(46, ng0);
    t11 = ((char*)((ng1)));
    t12 = (t0 + 3048);
    xsi_vlogvar_assign_value(t12, t11, 0, 0, 32);

LAB10:    t2 = (t0 + 3048);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = ((char*)((ng2)));
    memset(t13, 0, 8);
    xsi_vlog_signed_less(t13, 32, t4, 32, t5, 32);
    t11 = (t13 + 4);
    t6 = *((unsigned int *)t11);
    t7 = (~(t6));
    t8 = *((unsigned int *)t13);
    t9 = (t8 & t7);
    t10 = (t9 != 0);
    if (t10 > 0)
        goto LAB11;

LAB12:    goto LAB8;

LAB11:    xsi_set_current_line(46, ng0);

LAB13:    xsi_set_current_line(47, ng0);
    t12 = ((char*)((ng1)));
    t14 = (t0 + 2888);
    t17 = (t0 + 2888);
    t18 = (t17 + 72U);
    t19 = *((char **)t18);
    t20 = (t0 + 2888);
    t21 = (t20 + 64U);
    t22 = *((char **)t21);
    t23 = (t0 + 3048);
    t24 = (t23 + 56U);
    t25 = *((char **)t24);
    xsi_vlog_generic_convert_array_indices(t15, t16, t19, t22, 2, 1, t25, 32, 1);
    t26 = (t15 + 4);
    t27 = *((unsigned int *)t26);
    t28 = (!(t27));
    t29 = (t16 + 4);
    t30 = *((unsigned int *)t29);
    t31 = (!(t30));
    t32 = (t28 && t31);
    if (t32 == 1)
        goto LAB14;

LAB15:    xsi_set_current_line(46, ng0);
    t2 = (t0 + 3048);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = ((char*)((ng3)));
    memset(t13, 0, 8);
    xsi_vlog_signed_add(t13, 32, t4, 32, t5, 32);
    t11 = (t0 + 3048);
    xsi_vlogvar_assign_value(t11, t13, 0, 0, 32);
    goto LAB10;

LAB14:    t33 = *((unsigned int *)t15);
    t34 = *((unsigned int *)t16);
    t35 = (t33 - t34);
    t36 = (t35 + 1);
    xsi_vlogvar_wait_assign_value(t14, t12, 0, *((unsigned int *)t16), t36, 0LL);
    goto LAB15;

LAB17:    xsi_set_current_line(51, ng0);

LAB20:    xsi_set_current_line(52, ng0);
    t4 = (t0 + 1688U);
    t5 = *((char **)t4);
    t4 = (t5 + 4);
    t27 = *((unsigned int *)t4);
    t30 = (~(t27));
    t33 = *((unsigned int *)t5);
    t34 = (t33 & t30);
    t37 = (t34 != 0);
    if (t37 > 0)
        goto LAB21;

LAB22:    xsi_set_current_line(62, ng0);
    t2 = (t0 + 1848U);
    t3 = *((char **)t2);
    t2 = (t3 + 4);
    t6 = *((unsigned int *)t2);
    t7 = (~(t6));
    t8 = *((unsigned int *)t3);
    t9 = (t8 & t7);
    t10 = (t9 != 0);
    if (t10 > 0)
        goto LAB45;

LAB46:    xsi_set_current_line(82, ng0);

LAB71:    xsi_set_current_line(83, ng0);
    t2 = (t0 + 2168U);
    t3 = *((char **)t2);
    t2 = (t0 + 2888);
    t4 = (t0 + 2888);
    t5 = (t4 + 72U);
    t11 = *((char **)t5);
    t12 = (t0 + 2888);
    t14 = (t12 + 64U);
    t17 = *((char **)t14);
    t18 = (t0 + 2008U);
    t19 = *((char **)t18);
    memset(t67, 0, 8);
    t18 = (t67 + 4);
    t20 = (t19 + 4);
    t6 = *((unsigned int *)t19);
    t7 = (t6 >> 2);
    *((unsigned int *)t67) = t7;
    t8 = *((unsigned int *)t20);
    t9 = (t8 >> 2);
    *((unsigned int *)t18) = t9;
    t10 = *((unsigned int *)t67);
    *((unsigned int *)t67) = (t10 & 4095U);
    t27 = *((unsigned int *)t18);
    *((unsigned int *)t18) = (t27 & 4095U);
    xsi_vlog_generic_convert_array_indices(t15, t16, t11, t17, 2, 1, t67, 12, 2);
    t21 = (t15 + 4);
    t30 = *((unsigned int *)t21);
    t28 = (!(t30));
    t22 = (t16 + 4);
    t33 = *((unsigned int *)t22);
    t31 = (!(t33));
    t32 = (t28 && t31);
    if (t32 == 1)
        goto LAB72;

LAB73:    xsi_set_current_line(84, ng0);
    t2 = xsi_vlog_time(t114, 1000.0000000000000, 1000.0000000000000);
    t3 = (t0 + 2328U);
    t4 = *((char **)t3);
    t3 = (t0 + 2008U);
    t5 = *((char **)t3);
    t3 = (t0 + 2168U);
    t11 = *((char **)t3);
    xsi_vlogfile_write(1, 0, 0, ng7, 5, t0, (char)118, t114, 64, (char)118, t4, 32, (char)118, t5, 32, (char)118, t11, 32);

LAB47:
LAB23:    goto LAB19;

LAB21:    xsi_set_current_line(52, ng0);

LAB24:    xsi_set_current_line(53, ng0);
    t11 = (t0 + 2008U);
    t12 = *((char **)t11);
    memset(t13, 0, 8);
    t11 = (t13 + 4);
    t14 = (t12 + 4);
    t38 = *((unsigned int *)t12);
    t39 = (t38 >> 1);
    t40 = (t39 & 1);
    *((unsigned int *)t13) = t40;
    t41 = *((unsigned int *)t14);
    t42 = (t41 >> 1);
    t43 = (t42 & 1);
    *((unsigned int *)t11) = t43;
    t17 = ((char*)((ng4)));
    memset(t15, 0, 8);
    t18 = (t13 + 4);
    t19 = (t17 + 4);
    t44 = *((unsigned int *)t13);
    t45 = *((unsigned int *)t17);
    t46 = (t44 ^ t45);
    t47 = *((unsigned int *)t18);
    t48 = *((unsigned int *)t19);
    t49 = (t47 ^ t48);
    t50 = (t46 | t49);
    t51 = *((unsigned int *)t18);
    t52 = *((unsigned int *)t19);
    t53 = (t51 | t52);
    t54 = (~(t53));
    t55 = (t50 & t54);
    if (t55 != 0)
        goto LAB28;

LAB25:    if (t53 != 0)
        goto LAB27;

LAB26:    *((unsigned int *)t15) = 1;

LAB28:    t21 = (t15 + 4);
    t56 = *((unsigned int *)t21);
    t57 = (~(t56));
    t58 = *((unsigned int *)t15);
    t59 = (t58 & t57);
    t60 = (t59 != 0);
    if (t60 > 0)
        goto LAB29;

LAB30:    xsi_set_current_line(57, ng0);
    t2 = (t0 + 2008U);
    t3 = *((char **)t2);
    memset(t13, 0, 8);
    t2 = (t13 + 4);
    t4 = (t3 + 4);
    t6 = *((unsigned int *)t3);
    t7 = (t6 >> 1);
    t8 = (t7 & 1);
    *((unsigned int *)t13) = t8;
    t9 = *((unsigned int *)t4);
    t10 = (t9 >> 1);
    t27 = (t10 & 1);
    *((unsigned int *)t2) = t27;
    t5 = ((char*)((ng8)));
    memset(t15, 0, 8);
    t11 = (t13 + 4);
    t12 = (t5 + 4);
    t30 = *((unsigned int *)t13);
    t33 = *((unsigned int *)t5);
    t34 = (t30 ^ t33);
    t37 = *((unsigned int *)t11);
    t38 = *((unsigned int *)t12);
    t39 = (t37 ^ t38);
    t40 = (t34 | t39);
    t41 = *((unsigned int *)t11);
    t42 = *((unsigned int *)t12);
    t43 = (t41 | t42);
    t44 = (~(t43));
    t45 = (t40 & t44);
    if (t45 != 0)
        goto LAB38;

LAB35:    if (t43 != 0)
        goto LAB37;

LAB36:    *((unsigned int *)t15) = 1;

LAB38:    t17 = (t15 + 4);
    t46 = *((unsigned int *)t17);
    t47 = (~(t46));
    t48 = *((unsigned int *)t15);
    t49 = (t48 & t47);
    t50 = (t49 != 0);
    if (t50 > 0)
        goto LAB39;

LAB40:
LAB41:
LAB31:    goto LAB23;

LAB27:    t20 = (t15 + 4);
    *((unsigned int *)t15) = 1;
    *((unsigned int *)t20) = 1;
    goto LAB28;

LAB29:    xsi_set_current_line(53, ng0);

LAB32:    xsi_set_current_line(54, ng0);
    t22 = (t0 + 2168U);
    t23 = *((char **)t22);
    memset(t16, 0, 8);
    t22 = (t16 + 4);
    t24 = (t23 + 4);
    t61 = *((unsigned int *)t23);
    t62 = (t61 >> 0);
    *((unsigned int *)t16) = t62;
    t63 = *((unsigned int *)t24);
    t64 = (t63 >> 0);
    *((unsigned int *)t22) = t64;
    t65 = *((unsigned int *)t16);
    *((unsigned int *)t16) = (t65 & 65535U);
    t66 = *((unsigned int *)t22);
    *((unsigned int *)t22) = (t66 & 65535U);
    t25 = (t0 + 2888);
    t26 = (t0 + 2888);
    t29 = (t26 + 72U);
    t69 = *((char **)t29);
    t70 = (t0 + 2888);
    t71 = (t70 + 64U);
    t72 = *((char **)t71);
    t74 = (t0 + 2008U);
    t75 = *((char **)t74);
    memset(t73, 0, 8);
    t74 = (t73 + 4);
    t76 = (t75 + 4);
    t77 = *((unsigned int *)t75);
    t78 = (t77 >> 2);
    *((unsigned int *)t73) = t78;
    t79 = *((unsigned int *)t76);
    t80 = (t79 >> 2);
    *((unsigned int *)t74) = t80;
    t81 = *((unsigned int *)t73);
    *((unsigned int *)t73) = (t81 & 4095U);
    t82 = *((unsigned int *)t74);
    *((unsigned int *)t74) = (t82 & 4095U);
    xsi_vlog_generic_convert_array_indices(t67, t68, t69, t72, 2, 1, t73, 12, 2);
    t86 = (t0 + 2888);
    t87 = (t86 + 72U);
    t88 = *((char **)t87);
    t89 = ((char*)((ng5)));
    t90 = ((char*)((ng6)));
    xsi_vlog_convert_partindices(t83, t84, t85, ((int*)(t88)), 2, t89, 32, 1, t90, 32, 1);
    t91 = (t67 + 4);
    t92 = *((unsigned int *)t91);
    t28 = (!(t92));
    t93 = (t68 + 4);
    t94 = *((unsigned int *)t93);
    t31 = (!(t94));
    t32 = (t28 && t31);
    t95 = (t83 + 4);
    t96 = *((unsigned int *)t95);
    t35 = (!(t96));
    t36 = (t32 && t35);
    t97 = (t84 + 4);
    t98 = *((unsigned int *)t97);
    t99 = (!(t98));
    t100 = (t36 && t99);
    t101 = (t85 + 4);
    t102 = *((unsigned int *)t101);
    t103 = (!(t102));
    t104 = (t100 && t103);
    if (t104 == 1)
        goto LAB33;

LAB34:    xsi_set_current_line(55, ng0);
    t2 = xsi_vlog_time(t114, 1000.0000000000000, 1000.0000000000000);
    t3 = (t0 + 2328U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng8)));
    t5 = (t0 + 2008U);
    t11 = *((char **)t5);
    memset(t15, 0, 8);
    t5 = (t15 + 4);
    t12 = (t11 + 4);
    t6 = *((unsigned int *)t11);
    t7 = (t6 >> 2);
    *((unsigned int *)t15) = t7;
    t8 = *((unsigned int *)t12);
    t9 = (t8 >> 2);
    *((unsigned int *)t5) = t9;
    t10 = *((unsigned int *)t15);
    *((unsigned int *)t15) = (t10 & 1073741823U);
    t27 = *((unsigned int *)t5);
    *((unsigned int *)t5) = (t27 & 1073741823U);
    xsi_vlogtype_concat(t13, 32, 32, 2U, t15, 30, t3, 2);
    t14 = (t0 + 2888);
    t17 = (t14 + 56U);
    t18 = *((char **)t17);
    t19 = (t0 + 2888);
    t20 = (t19 + 72U);
    t21 = *((char **)t20);
    t22 = (t0 + 2888);
    t23 = (t22 + 64U);
    t24 = *((char **)t23);
    t25 = (t0 + 2008U);
    t26 = *((char **)t25);
    memset(t68, 0, 8);
    t25 = (t68 + 4);
    t29 = (t26 + 4);
    t30 = *((unsigned int *)t26);
    t33 = (t30 >> 2);
    *((unsigned int *)t68) = t33;
    t34 = *((unsigned int *)t29);
    t37 = (t34 >> 2);
    *((unsigned int *)t25) = t37;
    t38 = *((unsigned int *)t68);
    *((unsigned int *)t68) = (t38 & 4095U);
    t39 = *((unsigned int *)t25);
    *((unsigned int *)t25) = (t39 & 4095U);
    xsi_vlog_generic_get_array_select_value(t67, 32, t18, t21, t24, 2, 1, t68, 12, 2);
    memset(t73, 0, 8);
    t69 = (t73 + 4);
    t70 = (t67 + 4);
    t40 = *((unsigned int *)t67);
    t41 = (t40 >> 0);
    *((unsigned int *)t73) = t41;
    t42 = *((unsigned int *)t70);
    t43 = (t42 >> 0);
    *((unsigned int *)t69) = t43;
    t44 = *((unsigned int *)t73);
    *((unsigned int *)t73) = (t44 & 65535U);
    t45 = *((unsigned int *)t69);
    *((unsigned int *)t69) = (t45 & 65535U);
    t71 = (t0 + 2168U);
    t72 = *((char **)t71);
    memset(t83, 0, 8);
    t71 = (t83 + 4);
    t74 = (t72 + 4);
    t46 = *((unsigned int *)t72);
    t47 = (t46 >> 0);
    *((unsigned int *)t83) = t47;
    t48 = *((unsigned int *)t74);
    t49 = (t48 >> 0);
    *((unsigned int *)t71) = t49;
    t50 = *((unsigned int *)t83);
    *((unsigned int *)t83) = (t50 & 65535U);
    t51 = *((unsigned int *)t71);
    *((unsigned int *)t71) = (t51 & 65535U);
    xsi_vlogtype_concat(t16, 32, 32, 2U, t83, 16, t73, 16);
    xsi_vlogfile_write(1, 0, 0, ng7, 5, t0, (char)118, t114, 64, (char)118, t4, 32, (char)118, t13, 32, (char)118, t16, 32);
    goto LAB31;

LAB33:    t105 = *((unsigned int *)t85);
    t106 = (t105 + 0);
    t107 = *((unsigned int *)t68);
    t108 = *((unsigned int *)t84);
    t109 = (t107 + t108);
    t110 = *((unsigned int *)t83);
    t111 = *((unsigned int *)t84);
    t112 = (t110 - t111);
    t113 = (t112 + 1);
    xsi_vlogvar_wait_assign_value(t25, t16, t106, t109, t113, 0LL);
    goto LAB34;

LAB37:    t14 = (t15 + 4);
    *((unsigned int *)t15) = 1;
    *((unsigned int *)t14) = 1;
    goto LAB38;

LAB39:    xsi_set_current_line(57, ng0);

LAB42:    xsi_set_current_line(58, ng0);
    t18 = (t0 + 2168U);
    t19 = *((char **)t18);
    memset(t16, 0, 8);
    t18 = (t16 + 4);
    t20 = (t19 + 4);
    t51 = *((unsigned int *)t19);
    t52 = (t51 >> 0);
    *((unsigned int *)t16) = t52;
    t53 = *((unsigned int *)t20);
    t54 = (t53 >> 0);
    *((unsigned int *)t18) = t54;
    t55 = *((unsigned int *)t16);
    *((unsigned int *)t16) = (t55 & 65535U);
    t56 = *((unsigned int *)t18);
    *((unsigned int *)t18) = (t56 & 65535U);
    t21 = (t0 + 2888);
    t22 = (t0 + 2888);
    t23 = (t22 + 72U);
    t24 = *((char **)t23);
    t25 = (t0 + 2888);
    t26 = (t25 + 64U);
    t29 = *((char **)t26);
    t69 = (t0 + 2008U);
    t70 = *((char **)t69);
    memset(t73, 0, 8);
    t69 = (t73 + 4);
    t71 = (t70 + 4);
    t57 = *((unsigned int *)t70);
    t58 = (t57 >> 2);
    *((unsigned int *)t73) = t58;
    t59 = *((unsigned int *)t71);
    t60 = (t59 >> 2);
    *((unsigned int *)t69) = t60;
    t61 = *((unsigned int *)t73);
    *((unsigned int *)t73) = (t61 & 4095U);
    t62 = *((unsigned int *)t69);
    *((unsigned int *)t69) = (t62 & 4095U);
    xsi_vlog_generic_convert_array_indices(t67, t68, t24, t29, 2, 1, t73, 12, 2);
    t72 = (t0 + 2888);
    t74 = (t72 + 72U);
    t75 = *((char **)t74);
    t76 = ((char*)((ng9)));
    t86 = ((char*)((ng1)));
    xsi_vlog_convert_partindices(t83, t84, t85, ((int*)(t75)), 2, t76, 32, 1, t86, 32, 1);
    t87 = (t67 + 4);
    t63 = *((unsigned int *)t87);
    t28 = (!(t63));
    t88 = (t68 + 4);
    t64 = *((unsigned int *)t88);
    t31 = (!(t64));
    t32 = (t28 && t31);
    t89 = (t83 + 4);
    t65 = *((unsigned int *)t89);
    t35 = (!(t65));
    t36 = (t32 && t35);
    t90 = (t84 + 4);
    t66 = *((unsigned int *)t90);
    t99 = (!(t66));
    t100 = (t36 && t99);
    t91 = (t85 + 4);
    t77 = *((unsigned int *)t91);
    t103 = (!(t77));
    t104 = (t100 && t103);
    if (t104 == 1)
        goto LAB43;

LAB44:    xsi_set_current_line(59, ng0);
    t2 = xsi_vlog_time(t114, 1000.0000000000000, 1000.0000000000000);
    t3 = (t0 + 2328U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng8)));
    t5 = (t0 + 2008U);
    t11 = *((char **)t5);
    memset(t15, 0, 8);
    t5 = (t15 + 4);
    t12 = (t11 + 4);
    t6 = *((unsigned int *)t11);
    t7 = (t6 >> 2);
    *((unsigned int *)t15) = t7;
    t8 = *((unsigned int *)t12);
    t9 = (t8 >> 2);
    *((unsigned int *)t5) = t9;
    t10 = *((unsigned int *)t15);
    *((unsigned int *)t15) = (t10 & 1073741823U);
    t27 = *((unsigned int *)t5);
    *((unsigned int *)t5) = (t27 & 1073741823U);
    xsi_vlogtype_concat(t13, 32, 32, 2U, t15, 30, t3, 2);
    t14 = (t0 + 2168U);
    t17 = *((char **)t14);
    memset(t67, 0, 8);
    t14 = (t67 + 4);
    t18 = (t17 + 4);
    t30 = *((unsigned int *)t17);
    t33 = (t30 >> 0);
    *((unsigned int *)t67) = t33;
    t34 = *((unsigned int *)t18);
    t37 = (t34 >> 0);
    *((unsigned int *)t14) = t37;
    t38 = *((unsigned int *)t67);
    *((unsigned int *)t67) = (t38 & 65535U);
    t39 = *((unsigned int *)t14);
    *((unsigned int *)t14) = (t39 & 65535U);
    t19 = (t0 + 2888);
    t20 = (t19 + 56U);
    t21 = *((char **)t20);
    t22 = (t0 + 2888);
    t23 = (t22 + 72U);
    t24 = *((char **)t23);
    t25 = (t0 + 2888);
    t26 = (t25 + 64U);
    t29 = *((char **)t26);
    t69 = (t0 + 2008U);
    t70 = *((char **)t69);
    memset(t73, 0, 8);
    t69 = (t73 + 4);
    t71 = (t70 + 4);
    t40 = *((unsigned int *)t70);
    t41 = (t40 >> 2);
    *((unsigned int *)t73) = t41;
    t42 = *((unsigned int *)t71);
    t43 = (t42 >> 2);
    *((unsigned int *)t69) = t43;
    t44 = *((unsigned int *)t73);
    *((unsigned int *)t73) = (t44 & 4095U);
    t45 = *((unsigned int *)t69);
    *((unsigned int *)t69) = (t45 & 4095U);
    xsi_vlog_generic_get_array_select_value(t68, 32, t21, t24, t29, 2, 1, t73, 12, 2);
    memset(t83, 0, 8);
    t72 = (t83 + 4);
    t74 = (t68 + 4);
    t46 = *((unsigned int *)t68);
    t47 = (t46 >> 16);
    *((unsigned int *)t83) = t47;
    t48 = *((unsigned int *)t74);
    t49 = (t48 >> 16);
    *((unsigned int *)t72) = t49;
    t50 = *((unsigned int *)t83);
    *((unsigned int *)t83) = (t50 & 65535U);
    t51 = *((unsigned int *)t72);
    *((unsigned int *)t72) = (t51 & 65535U);
    xsi_vlogtype_concat(t16, 32, 32, 2U, t83, 16, t67, 16);
    xsi_vlogfile_write(1, 0, 0, ng7, 5, t0, (char)118, t114, 64, (char)118, t4, 32, (char)118, t13, 32, (char)118, t16, 32);
    goto LAB41;

LAB43:    t78 = *((unsigned int *)t85);
    t106 = (t78 + 0);
    t79 = *((unsigned int *)t68);
    t80 = *((unsigned int *)t84);
    t109 = (t79 + t80);
    t81 = *((unsigned int *)t83);
    t82 = *((unsigned int *)t84);
    t112 = (t81 - t82);
    t113 = (t112 + 1);
    xsi_vlogvar_wait_assign_value(t21, t16, t106, t109, t113, 0LL);
    goto LAB44;

LAB45:    xsi_set_current_line(62, ng0);

LAB48:    xsi_set_current_line(63, ng0);
    t4 = (t0 + 2008U);
    t5 = *((char **)t4);
    memset(t13, 0, 8);
    t4 = (t13 + 4);
    t11 = (t5 + 4);
    t27 = *((unsigned int *)t5);
    t30 = (t27 >> 0);
    *((unsigned int *)t13) = t30;
    t33 = *((unsigned int *)t11);
    t34 = (t33 >> 0);
    *((unsigned int *)t4) = t34;
    t37 = *((unsigned int *)t13);
    *((unsigned int *)t13) = (t37 & 3U);
    t38 = *((unsigned int *)t4);
    *((unsigned int *)t4) = (t38 & 3U);

LAB49:    t12 = ((char*)((ng8)));
    t28 = xsi_vlog_unsigned_case_compare(t13, 2, t12, 2);
    if (t28 == 1)
        goto LAB50;

LAB51:    t2 = ((char*)((ng4)));
    t28 = xsi_vlog_unsigned_case_compare(t13, 2, t2, 2);
    if (t28 == 1)
        goto LAB52;

LAB53:    t2 = ((char*)((ng12)));
    t28 = xsi_vlog_unsigned_case_compare(t13, 2, t2, 2);
    if (t28 == 1)
        goto LAB54;

LAB55:    t2 = ((char*)((ng14)));
    t28 = xsi_vlog_unsigned_case_compare(t13, 2, t2, 2);
    if (t28 == 1)
        goto LAB56;

LAB57:
LAB58:    goto LAB47;

LAB50:    xsi_set_current_line(64, ng0);

LAB59:    xsi_set_current_line(65, ng0);
    t14 = (t0 + 2168U);
    t17 = *((char **)t14);
    memset(t15, 0, 8);
    t14 = (t15 + 4);
    t18 = (t17 + 4);
    t39 = *((unsigned int *)t17);
    t40 = (t39 >> 0);
    *((unsigned int *)t15) = t40;
    t41 = *((unsigned int *)t18);
    t42 = (t41 >> 0);
    *((unsigned int *)t14) = t42;
    t43 = *((unsigned int *)t15);
    *((unsigned int *)t15) = (t43 & 255U);
    t44 = *((unsigned int *)t14);
    *((unsigned int *)t14) = (t44 & 255U);
    t19 = (t0 + 2888);
    t20 = (t0 + 2888);
    t21 = (t20 + 72U);
    t22 = *((char **)t21);
    t23 = (t0 + 2888);
    t24 = (t23 + 64U);
    t25 = *((char **)t24);
    t26 = (t0 + 2008U);
    t29 = *((char **)t26);
    memset(t68, 0, 8);
    t26 = (t68 + 4);
    t69 = (t29 + 4);
    t45 = *((unsigned int *)t29);
    t46 = (t45 >> 2);
    *((unsigned int *)t68) = t46;
    t47 = *((unsigned int *)t69);
    t48 = (t47 >> 2);
    *((unsigned int *)t26) = t48;
    t49 = *((unsigned int *)t68);
    *((unsigned int *)t68) = (t49 & 4095U);
    t50 = *((unsigned int *)t26);
    *((unsigned int *)t26) = (t50 & 4095U);
    xsi_vlog_generic_convert_array_indices(t16, t67, t22, t25, 2, 1, t68, 12, 2);
    t70 = (t0 + 2888);
    t71 = (t70 + 72U);
    t72 = *((char **)t71);
    t74 = ((char*)((ng10)));
    t75 = ((char*)((ng1)));
    xsi_vlog_convert_partindices(t73, t83, t84, ((int*)(t72)), 2, t74, 32, 1, t75, 32, 1);
    t76 = (t16 + 4);
    t51 = *((unsigned int *)t76);
    t31 = (!(t51));
    t86 = (t67 + 4);
    t52 = *((unsigned int *)t86);
    t32 = (!(t52));
    t35 = (t31 && t32);
    t87 = (t73 + 4);
    t53 = *((unsigned int *)t87);
    t36 = (!(t53));
    t99 = (t35 && t36);
    t88 = (t83 + 4);
    t54 = *((unsigned int *)t88);
    t100 = (!(t54));
    t103 = (t99 && t100);
    t89 = (t84 + 4);
    t55 = *((unsigned int *)t89);
    t104 = (!(t55));
    t106 = (t103 && t104);
    if (t106 == 1)
        goto LAB60;

LAB61:    xsi_set_current_line(66, ng0);
    t2 = xsi_vlog_time(t114, 1000.0000000000000, 1000.0000000000000);
    t3 = (t0 + 2328U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng8)));
    t5 = (t0 + 2008U);
    t11 = *((char **)t5);
    memset(t16, 0, 8);
    t5 = (t16 + 4);
    t12 = (t11 + 4);
    t6 = *((unsigned int *)t11);
    t7 = (t6 >> 2);
    *((unsigned int *)t16) = t7;
    t8 = *((unsigned int *)t12);
    t9 = (t8 >> 2);
    *((unsigned int *)t5) = t9;
    t10 = *((unsigned int *)t16);
    *((unsigned int *)t16) = (t10 & 1073741823U);
    t27 = *((unsigned int *)t5);
    *((unsigned int *)t5) = (t27 & 1073741823U);
    xsi_vlogtype_concat(t15, 32, 32, 2U, t16, 30, t3, 2);
    t14 = (t0 + 2168U);
    t17 = *((char **)t14);
    memset(t68, 0, 8);
    t14 = (t68 + 4);
    t18 = (t17 + 4);
    t30 = *((unsigned int *)t17);
    t33 = (t30 >> 0);
    *((unsigned int *)t68) = t33;
    t34 = *((unsigned int *)t18);
    t37 = (t34 >> 0);
    *((unsigned int *)t14) = t37;
    t38 = *((unsigned int *)t68);
    *((unsigned int *)t68) = (t38 & 255U);
    t39 = *((unsigned int *)t14);
    *((unsigned int *)t14) = (t39 & 255U);
    t19 = (t0 + 2888);
    t20 = (t19 + 56U);
    t21 = *((char **)t20);
    t22 = (t0 + 2888);
    t23 = (t22 + 72U);
    t24 = *((char **)t23);
    t25 = (t0 + 2888);
    t26 = (t25 + 64U);
    t29 = *((char **)t26);
    t69 = (t0 + 2008U);
    t70 = *((char **)t69);
    memset(t83, 0, 8);
    t69 = (t83 + 4);
    t71 = (t70 + 4);
    t40 = *((unsigned int *)t70);
    t41 = (t40 >> 2);
    *((unsigned int *)t83) = t41;
    t42 = *((unsigned int *)t71);
    t43 = (t42 >> 2);
    *((unsigned int *)t69) = t43;
    t44 = *((unsigned int *)t83);
    *((unsigned int *)t83) = (t44 & 4095U);
    t45 = *((unsigned int *)t69);
    *((unsigned int *)t69) = (t45 & 4095U);
    xsi_vlog_generic_get_array_select_value(t73, 32, t21, t24, t29, 2, 1, t83, 12, 2);
    memset(t84, 0, 8);
    t72 = (t84 + 4);
    t74 = (t73 + 4);
    t46 = *((unsigned int *)t73);
    t47 = (t46 >> 8);
    *((unsigned int *)t84) = t47;
    t48 = *((unsigned int *)t74);
    t49 = (t48 >> 8);
    *((unsigned int *)t72) = t49;
    t50 = *((unsigned int *)t84);
    *((unsigned int *)t84) = (t50 & 16777215U);
    t51 = *((unsigned int *)t72);
    *((unsigned int *)t72) = (t51 & 16777215U);
    xsi_vlogtype_concat(t67, 32, 32, 2U, t84, 24, t68, 8);
    xsi_vlogfile_write(1, 0, 0, ng7, 5, t0, (char)118, t114, 64, (char)118, t4, 32, (char)118, t15, 32, (char)118, t67, 32);
    goto LAB58;

LAB52:    xsi_set_current_line(68, ng0);

LAB62:    xsi_set_current_line(69, ng0);
    t3 = (t0 + 2168U);
    t4 = *((char **)t3);
    memset(t15, 0, 8);
    t3 = (t15 + 4);
    t5 = (t4 + 4);
    t6 = *((unsigned int *)t4);
    t7 = (t6 >> 0);
    *((unsigned int *)t15) = t7;
    t8 = *((unsigned int *)t5);
    t9 = (t8 >> 0);
    *((unsigned int *)t3) = t9;
    t10 = *((unsigned int *)t15);
    *((unsigned int *)t15) = (t10 & 255U);
    t27 = *((unsigned int *)t3);
    *((unsigned int *)t3) = (t27 & 255U);
    t11 = (t0 + 2888);
    t12 = (t0 + 2888);
    t14 = (t12 + 72U);
    t17 = *((char **)t14);
    t18 = (t0 + 2888);
    t19 = (t18 + 64U);
    t20 = *((char **)t19);
    t21 = (t0 + 2008U);
    t22 = *((char **)t21);
    memset(t68, 0, 8);
    t21 = (t68 + 4);
    t23 = (t22 + 4);
    t30 = *((unsigned int *)t22);
    t33 = (t30 >> 2);
    *((unsigned int *)t68) = t33;
    t34 = *((unsigned int *)t23);
    t37 = (t34 >> 2);
    *((unsigned int *)t21) = t37;
    t38 = *((unsigned int *)t68);
    *((unsigned int *)t68) = (t38 & 4095U);
    t39 = *((unsigned int *)t21);
    *((unsigned int *)t21) = (t39 & 4095U);
    xsi_vlog_generic_convert_array_indices(t16, t67, t17, t20, 2, 1, t68, 12, 2);
    t24 = (t0 + 2888);
    t25 = (t24 + 72U);
    t26 = *((char **)t25);
    t29 = ((char*)((ng9)));
    t69 = ((char*)((ng11)));
    xsi_vlog_convert_partindices(t73, t83, t84, ((int*)(t26)), 2, t29, 32, 1, t69, 32, 1);
    t70 = (t16 + 4);
    t40 = *((unsigned int *)t70);
    t31 = (!(t40));
    t71 = (t67 + 4);
    t41 = *((unsigned int *)t71);
    t32 = (!(t41));
    t35 = (t31 && t32);
    t72 = (t73 + 4);
    t42 = *((unsigned int *)t72);
    t36 = (!(t42));
    t99 = (t35 && t36);
    t74 = (t83 + 4);
    t43 = *((unsigned int *)t74);
    t100 = (!(t43));
    t103 = (t99 && t100);
    t75 = (t84 + 4);
    t44 = *((unsigned int *)t75);
    t104 = (!(t44));
    t106 = (t103 && t104);
    if (t106 == 1)
        goto LAB63;

LAB64:    xsi_set_current_line(70, ng0);
    t2 = xsi_vlog_time(t114, 1000.0000000000000, 1000.0000000000000);
    t3 = (t0 + 2328U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng8)));
    t5 = (t0 + 2008U);
    t11 = *((char **)t5);
    memset(t16, 0, 8);
    t5 = (t16 + 4);
    t12 = (t11 + 4);
    t6 = *((unsigned int *)t11);
    t7 = (t6 >> 2);
    *((unsigned int *)t16) = t7;
    t8 = *((unsigned int *)t12);
    t9 = (t8 >> 2);
    *((unsigned int *)t5) = t9;
    t10 = *((unsigned int *)t16);
    *((unsigned int *)t16) = (t10 & 1073741823U);
    t27 = *((unsigned int *)t5);
    *((unsigned int *)t5) = (t27 & 1073741823U);
    xsi_vlogtype_concat(t15, 32, 32, 2U, t16, 30, t3, 2);
    t14 = (t0 + 2888);
    t17 = (t14 + 56U);
    t18 = *((char **)t17);
    t19 = (t0 + 2888);
    t20 = (t19 + 72U);
    t21 = *((char **)t20);
    t22 = (t0 + 2888);
    t23 = (t22 + 64U);
    t24 = *((char **)t23);
    t25 = (t0 + 2008U);
    t26 = *((char **)t25);
    memset(t73, 0, 8);
    t25 = (t73 + 4);
    t29 = (t26 + 4);
    t30 = *((unsigned int *)t26);
    t33 = (t30 >> 2);
    *((unsigned int *)t73) = t33;
    t34 = *((unsigned int *)t29);
    t37 = (t34 >> 2);
    *((unsigned int *)t25) = t37;
    t38 = *((unsigned int *)t73);
    *((unsigned int *)t73) = (t38 & 4095U);
    t39 = *((unsigned int *)t25);
    *((unsigned int *)t25) = (t39 & 4095U);
    xsi_vlog_generic_get_array_select_value(t68, 32, t18, t21, t24, 2, 1, t73, 12, 2);
    memset(t83, 0, 8);
    t69 = (t83 + 4);
    t70 = (t68 + 4);
    t40 = *((unsigned int *)t68);
    t41 = (t40 >> 0);
    *((unsigned int *)t83) = t41;
    t42 = *((unsigned int *)t70);
    t43 = (t42 >> 0);
    *((unsigned int *)t69) = t43;
    t44 = *((unsigned int *)t83);
    *((unsigned int *)t83) = (t44 & 255U);
    t45 = *((unsigned int *)t69);
    *((unsigned int *)t69) = (t45 & 255U);
    t71 = (t0 + 2168U);
    t72 = *((char **)t71);
    memset(t84, 0, 8);
    t71 = (t84 + 4);
    t74 = (t72 + 4);
    t46 = *((unsigned int *)t72);
    t47 = (t46 >> 0);
    *((unsigned int *)t84) = t47;
    t48 = *((unsigned int *)t74);
    t49 = (t48 >> 0);
    *((unsigned int *)t71) = t49;
    t50 = *((unsigned int *)t84);
    *((unsigned int *)t84) = (t50 & 255U);
    t51 = *((unsigned int *)t71);
    *((unsigned int *)t71) = (t51 & 255U);
    t75 = (t0 + 2888);
    t76 = (t75 + 56U);
    t86 = *((char **)t76);
    t87 = (t0 + 2888);
    t88 = (t87 + 72U);
    t89 = *((char **)t88);
    t90 = (t0 + 2888);
    t91 = (t90 + 64U);
    t93 = *((char **)t91);
    t95 = (t0 + 2008U);
    t97 = *((char **)t95);
    memset(t116, 0, 8);
    t95 = (t116 + 4);
    t101 = (t97 + 4);
    t52 = *((unsigned int *)t97);
    t53 = (t52 >> 2);
    *((unsigned int *)t116) = t53;
    t54 = *((unsigned int *)t101);
    t55 = (t54 >> 2);
    *((unsigned int *)t95) = t55;
    t56 = *((unsigned int *)t116);
    *((unsigned int *)t116) = (t56 & 4095U);
    t57 = *((unsigned int *)t95);
    *((unsigned int *)t95) = (t57 & 4095U);
    xsi_vlog_generic_get_array_select_value(t85, 32, t86, t89, t93, 2, 1, t116, 12, 2);
    memset(t117, 0, 8);
    t118 = (t117 + 4);
    t119 = (t85 + 4);
    t58 = *((unsigned int *)t85);
    t59 = (t58 >> 16);
    *((unsigned int *)t117) = t59;
    t60 = *((unsigned int *)t119);
    t61 = (t60 >> 16);
    *((unsigned int *)t118) = t61;
    t62 = *((unsigned int *)t117);
    *((unsigned int *)t117) = (t62 & 65535U);
    t63 = *((unsigned int *)t118);
    *((unsigned int *)t118) = (t63 & 65535U);
    xsi_vlogtype_concat(t67, 32, 32, 3U, t117, 16, t84, 8, t83, 8);
    xsi_vlogfile_write(1, 0, 0, ng7, 5, t0, (char)118, t114, 64, (char)118, t4, 32, (char)118, t15, 32, (char)118, t67, 32);
    goto LAB58;

LAB54:    xsi_set_current_line(72, ng0);

LAB65:    xsi_set_current_line(73, ng0);
    t3 = (t0 + 2168U);
    t4 = *((char **)t3);
    memset(t15, 0, 8);
    t3 = (t15 + 4);
    t5 = (t4 + 4);
    t6 = *((unsigned int *)t4);
    t7 = (t6 >> 0);
    *((unsigned int *)t15) = t7;
    t8 = *((unsigned int *)t5);
    t9 = (t8 >> 0);
    *((unsigned int *)t3) = t9;
    t10 = *((unsigned int *)t15);
    *((unsigned int *)t15) = (t10 & 255U);
    t27 = *((unsigned int *)t3);
    *((unsigned int *)t3) = (t27 & 255U);
    t11 = (t0 + 2888);
    t12 = (t0 + 2888);
    t14 = (t12 + 72U);
    t17 = *((char **)t14);
    t18 = (t0 + 2888);
    t19 = (t18 + 64U);
    t20 = *((char **)t19);
    t21 = (t0 + 2008U);
    t22 = *((char **)t21);
    memset(t68, 0, 8);
    t21 = (t68 + 4);
    t23 = (t22 + 4);
    t30 = *((unsigned int *)t22);
    t33 = (t30 >> 2);
    *((unsigned int *)t68) = t33;
    t34 = *((unsigned int *)t23);
    t37 = (t34 >> 2);
    *((unsigned int *)t21) = t37;
    t38 = *((unsigned int *)t68);
    *((unsigned int *)t68) = (t38 & 4095U);
    t39 = *((unsigned int *)t21);
    *((unsigned int *)t21) = (t39 & 4095U);
    xsi_vlog_generic_convert_array_indices(t16, t67, t17, t20, 2, 1, t68, 12, 2);
    t24 = (t0 + 2888);
    t25 = (t24 + 72U);
    t26 = *((char **)t25);
    t29 = ((char*)((ng13)));
    t69 = ((char*)((ng6)));
    xsi_vlog_convert_partindices(t73, t83, t84, ((int*)(t26)), 2, t29, 32, 1, t69, 32, 1);
    t70 = (t16 + 4);
    t40 = *((unsigned int *)t70);
    t31 = (!(t40));
    t71 = (t67 + 4);
    t41 = *((unsigned int *)t71);
    t32 = (!(t41));
    t35 = (t31 && t32);
    t72 = (t73 + 4);
    t42 = *((unsigned int *)t72);
    t36 = (!(t42));
    t99 = (t35 && t36);
    t74 = (t83 + 4);
    t43 = *((unsigned int *)t74);
    t100 = (!(t43));
    t103 = (t99 && t100);
    t75 = (t84 + 4);
    t44 = *((unsigned int *)t75);
    t104 = (!(t44));
    t106 = (t103 && t104);
    if (t106 == 1)
        goto LAB66;

LAB67:    xsi_set_current_line(74, ng0);
    t2 = xsi_vlog_time(t114, 1000.0000000000000, 1000.0000000000000);
    t3 = (t0 + 2328U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng8)));
    t5 = (t0 + 2008U);
    t11 = *((char **)t5);
    memset(t16, 0, 8);
    t5 = (t16 + 4);
    t12 = (t11 + 4);
    t6 = *((unsigned int *)t11);
    t7 = (t6 >> 2);
    *((unsigned int *)t16) = t7;
    t8 = *((unsigned int *)t12);
    t9 = (t8 >> 2);
    *((unsigned int *)t5) = t9;
    t10 = *((unsigned int *)t16);
    *((unsigned int *)t16) = (t10 & 1073741823U);
    t27 = *((unsigned int *)t5);
    *((unsigned int *)t5) = (t27 & 1073741823U);
    xsi_vlogtype_concat(t15, 32, 32, 2U, t16, 30, t3, 2);
    t14 = (t0 + 2888);
    t17 = (t14 + 56U);
    t18 = *((char **)t17);
    t19 = (t0 + 2888);
    t20 = (t19 + 72U);
    t21 = *((char **)t20);
    t22 = (t0 + 2888);
    t23 = (t22 + 64U);
    t24 = *((char **)t23);
    t25 = (t0 + 2008U);
    t26 = *((char **)t25);
    memset(t73, 0, 8);
    t25 = (t73 + 4);
    t29 = (t26 + 4);
    t30 = *((unsigned int *)t26);
    t33 = (t30 >> 2);
    *((unsigned int *)t73) = t33;
    t34 = *((unsigned int *)t29);
    t37 = (t34 >> 2);
    *((unsigned int *)t25) = t37;
    t38 = *((unsigned int *)t73);
    *((unsigned int *)t73) = (t38 & 4095U);
    t39 = *((unsigned int *)t25);
    *((unsigned int *)t25) = (t39 & 4095U);
    xsi_vlog_generic_get_array_select_value(t68, 32, t18, t21, t24, 2, 1, t73, 12, 2);
    memset(t83, 0, 8);
    t69 = (t83 + 4);
    t70 = (t68 + 4);
    t40 = *((unsigned int *)t68);
    t41 = (t40 >> 0);
    *((unsigned int *)t83) = t41;
    t42 = *((unsigned int *)t70);
    t43 = (t42 >> 0);
    *((unsigned int *)t69) = t43;
    t44 = *((unsigned int *)t83);
    *((unsigned int *)t83) = (t44 & 65535U);
    t45 = *((unsigned int *)t69);
    *((unsigned int *)t69) = (t45 & 65535U);
    t71 = (t0 + 2168U);
    t72 = *((char **)t71);
    memset(t84, 0, 8);
    t71 = (t84 + 4);
    t74 = (t72 + 4);
    t46 = *((unsigned int *)t72);
    t47 = (t46 >> 0);
    *((unsigned int *)t84) = t47;
    t48 = *((unsigned int *)t74);
    t49 = (t48 >> 0);
    *((unsigned int *)t71) = t49;
    t50 = *((unsigned int *)t84);
    *((unsigned int *)t84) = (t50 & 255U);
    t51 = *((unsigned int *)t71);
    *((unsigned int *)t71) = (t51 & 255U);
    t75 = (t0 + 2888);
    t76 = (t75 + 56U);
    t86 = *((char **)t76);
    t87 = (t0 + 2888);
    t88 = (t87 + 72U);
    t89 = *((char **)t88);
    t90 = (t0 + 2888);
    t91 = (t90 + 64U);
    t93 = *((char **)t91);
    t95 = (t0 + 2008U);
    t97 = *((char **)t95);
    memset(t116, 0, 8);
    t95 = (t116 + 4);
    t101 = (t97 + 4);
    t52 = *((unsigned int *)t97);
    t53 = (t52 >> 2);
    *((unsigned int *)t116) = t53;
    t54 = *((unsigned int *)t101);
    t55 = (t54 >> 2);
    *((unsigned int *)t95) = t55;
    t56 = *((unsigned int *)t116);
    *((unsigned int *)t116) = (t56 & 4095U);
    t57 = *((unsigned int *)t95);
    *((unsigned int *)t95) = (t57 & 4095U);
    xsi_vlog_generic_get_array_select_value(t85, 32, t86, t89, t93, 2, 1, t116, 12, 2);
    memset(t117, 0, 8);
    t118 = (t117 + 4);
    t119 = (t85 + 4);
    t58 = *((unsigned int *)t85);
    t59 = (t58 >> 24);
    *((unsigned int *)t117) = t59;
    t60 = *((unsigned int *)t119);
    t61 = (t60 >> 24);
    *((unsigned int *)t118) = t61;
    t62 = *((unsigned int *)t117);
    *((unsigned int *)t117) = (t62 & 255U);
    t63 = *((unsigned int *)t118);
    *((unsigned int *)t118) = (t63 & 255U);
    xsi_vlogtype_concat(t67, 32, 32, 3U, t117, 8, t84, 8, t83, 16);
    xsi_vlogfile_write(1, 0, 0, ng7, 5, t0, (char)118, t114, 64, (char)118, t4, 32, (char)118, t15, 32, (char)118, t67, 32);
    goto LAB58;

LAB56:    xsi_set_current_line(76, ng0);

LAB68:    xsi_set_current_line(77, ng0);
    t3 = (t0 + 2168U);
    t4 = *((char **)t3);
    memset(t15, 0, 8);
    t3 = (t15 + 4);
    t5 = (t4 + 4);
    t6 = *((unsigned int *)t4);
    t7 = (t6 >> 0);
    *((unsigned int *)t15) = t7;
    t8 = *((unsigned int *)t5);
    t9 = (t8 >> 0);
    *((unsigned int *)t3) = t9;
    t10 = *((unsigned int *)t15);
    *((unsigned int *)t15) = (t10 & 255U);
    t27 = *((unsigned int *)t3);
    *((unsigned int *)t3) = (t27 & 255U);
    t11 = (t0 + 2888);
    t12 = (t0 + 2888);
    t14 = (t12 + 72U);
    t17 = *((char **)t14);
    t18 = (t0 + 2888);
    t19 = (t18 + 64U);
    t20 = *((char **)t19);
    t21 = (t0 + 2008U);
    t22 = *((char **)t21);
    memset(t68, 0, 8);
    t21 = (t68 + 4);
    t23 = (t22 + 4);
    t30 = *((unsigned int *)t22);
    t33 = (t30 >> 2);
    *((unsigned int *)t68) = t33;
    t34 = *((unsigned int *)t23);
    t37 = (t34 >> 2);
    *((unsigned int *)t21) = t37;
    t38 = *((unsigned int *)t68);
    *((unsigned int *)t68) = (t38 & 4095U);
    t39 = *((unsigned int *)t21);
    *((unsigned int *)t21) = (t39 & 4095U);
    xsi_vlog_generic_convert_array_indices(t16, t67, t17, t20, 2, 1, t68, 12, 2);
    t24 = (t0 + 2888);
    t25 = (t24 + 72U);
    t26 = *((char **)t25);
    t29 = ((char*)((ng5)));
    t69 = ((char*)((ng15)));
    xsi_vlog_convert_partindices(t73, t83, t84, ((int*)(t26)), 2, t29, 32, 1, t69, 32, 1);
    t70 = (t16 + 4);
    t40 = *((unsigned int *)t70);
    t31 = (!(t40));
    t71 = (t67 + 4);
    t41 = *((unsigned int *)t71);
    t32 = (!(t41));
    t35 = (t31 && t32);
    t72 = (t73 + 4);
    t42 = *((unsigned int *)t72);
    t36 = (!(t42));
    t99 = (t35 && t36);
    t74 = (t83 + 4);
    t43 = *((unsigned int *)t74);
    t100 = (!(t43));
    t103 = (t99 && t100);
    t75 = (t84 + 4);
    t44 = *((unsigned int *)t75);
    t104 = (!(t44));
    t106 = (t103 && t104);
    if (t106 == 1)
        goto LAB69;

LAB70:    xsi_set_current_line(78, ng0);
    t2 = xsi_vlog_time(t114, 1000.0000000000000, 1000.0000000000000);
    t3 = (t0 + 2328U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng8)));
    t5 = (t0 + 2008U);
    t11 = *((char **)t5);
    memset(t16, 0, 8);
    t5 = (t16 + 4);
    t12 = (t11 + 4);
    t6 = *((unsigned int *)t11);
    t7 = (t6 >> 2);
    *((unsigned int *)t16) = t7;
    t8 = *((unsigned int *)t12);
    t9 = (t8 >> 2);
    *((unsigned int *)t5) = t9;
    t10 = *((unsigned int *)t16);
    *((unsigned int *)t16) = (t10 & 1073741823U);
    t27 = *((unsigned int *)t5);
    *((unsigned int *)t5) = (t27 & 1073741823U);
    xsi_vlogtype_concat(t15, 32, 32, 2U, t16, 30, t3, 2);
    t14 = (t0 + 2888);
    t17 = (t14 + 56U);
    t18 = *((char **)t17);
    t19 = (t0 + 2888);
    t20 = (t19 + 72U);
    t21 = *((char **)t20);
    t22 = (t0 + 2888);
    t23 = (t22 + 64U);
    t24 = *((char **)t23);
    t25 = (t0 + 2008U);
    t26 = *((char **)t25);
    memset(t73, 0, 8);
    t25 = (t73 + 4);
    t29 = (t26 + 4);
    t30 = *((unsigned int *)t26);
    t33 = (t30 >> 2);
    *((unsigned int *)t73) = t33;
    t34 = *((unsigned int *)t29);
    t37 = (t34 >> 2);
    *((unsigned int *)t25) = t37;
    t38 = *((unsigned int *)t73);
    *((unsigned int *)t73) = (t38 & 4095U);
    t39 = *((unsigned int *)t25);
    *((unsigned int *)t25) = (t39 & 4095U);
    xsi_vlog_generic_get_array_select_value(t68, 32, t18, t21, t24, 2, 1, t73, 12, 2);
    memset(t83, 0, 8);
    t69 = (t83 + 4);
    t70 = (t68 + 4);
    t40 = *((unsigned int *)t68);
    t41 = (t40 >> 0);
    *((unsigned int *)t83) = t41;
    t42 = *((unsigned int *)t70);
    t43 = (t42 >> 0);
    *((unsigned int *)t69) = t43;
    t44 = *((unsigned int *)t83);
    *((unsigned int *)t83) = (t44 & 16777215U);
    t45 = *((unsigned int *)t69);
    *((unsigned int *)t69) = (t45 & 16777215U);
    t71 = (t0 + 2168U);
    t72 = *((char **)t71);
    memset(t84, 0, 8);
    t71 = (t84 + 4);
    t74 = (t72 + 4);
    t46 = *((unsigned int *)t72);
    t47 = (t46 >> 0);
    *((unsigned int *)t84) = t47;
    t48 = *((unsigned int *)t74);
    t49 = (t48 >> 0);
    *((unsigned int *)t71) = t49;
    t50 = *((unsigned int *)t84);
    *((unsigned int *)t84) = (t50 & 255U);
    t51 = *((unsigned int *)t71);
    *((unsigned int *)t71) = (t51 & 255U);
    xsi_vlogtype_concat(t67, 32, 32, 2U, t84, 8, t83, 24);
    xsi_vlogfile_write(1, 0, 0, ng7, 5, t0, (char)118, t114, 64, (char)118, t4, 32, (char)118, t15, 32, (char)118, t67, 32);
    goto LAB58;

LAB60:    t56 = *((unsigned int *)t84);
    t109 = (t56 + 0);
    t57 = *((unsigned int *)t67);
    t58 = *((unsigned int *)t83);
    t112 = (t57 + t58);
    t59 = *((unsigned int *)t73);
    t60 = *((unsigned int *)t83);
    t113 = (t59 - t60);
    t115 = (t113 + 1);
    xsi_vlogvar_wait_assign_value(t19, t15, t109, t112, t115, 0LL);
    goto LAB61;

LAB63:    t45 = *((unsigned int *)t84);
    t109 = (t45 + 0);
    t46 = *((unsigned int *)t67);
    t47 = *((unsigned int *)t83);
    t112 = (t46 + t47);
    t48 = *((unsigned int *)t73);
    t49 = *((unsigned int *)t83);
    t113 = (t48 - t49);
    t115 = (t113 + 1);
    xsi_vlogvar_wait_assign_value(t11, t15, t109, t112, t115, 0LL);
    goto LAB64;

LAB66:    t45 = *((unsigned int *)t84);
    t109 = (t45 + 0);
    t46 = *((unsigned int *)t67);
    t47 = *((unsigned int *)t83);
    t112 = (t46 + t47);
    t48 = *((unsigned int *)t73);
    t49 = *((unsigned int *)t83);
    t113 = (t48 - t49);
    t115 = (t113 + 1);
    xsi_vlogvar_wait_assign_value(t11, t15, t109, t112, t115, 0LL);
    goto LAB67;

LAB69:    t45 = *((unsigned int *)t84);
    t109 = (t45 + 0);
    t46 = *((unsigned int *)t67);
    t47 = *((unsigned int *)t83);
    t112 = (t46 + t47);
    t48 = *((unsigned int *)t73);
    t49 = *((unsigned int *)t83);
    t113 = (t48 - t49);
    t115 = (t113 + 1);
    xsi_vlogvar_wait_assign_value(t11, t15, t109, t112, t115, 0LL);
    goto LAB70;

LAB72:    t34 = *((unsigned int *)t15);
    t37 = *((unsigned int *)t16);
    t35 = (t34 - t37);
    t36 = (t35 + 1);
    xsi_vlogvar_wait_assign_value(t2, t3, 0, *((unsigned int *)t16), t36, 0LL);
    goto LAB73;

}


extern void work_m_00000000003096187143_0010801604_init()
{
	static char *pe[] = {(void *)Initial_36_0,(void *)Cont_42_1,(void *)Always_44_2};
	xsi_register_didat("work_m_00000000003096187143_0010801604", "isim/test_isim_beh.exe.sim/work/m_00000000003096187143_0010801604.didat");
	xsi_register_executes(pe);
}
